﻿namespace DoNet.Wechat.MP.Enums
{
    /// <summary>
    /// 菜单按钮类型
    /// </summary>
    public enum MenuButtonType
    {
        /// <summary>
        /// 点击
        /// </summary>
        click,
        /// <summary>
        /// Url
        /// </summary>
        view,

        #region API自定义菜单
        /// <summary>
        /// 下发消息（除文本消息）
        /// 图片、音频、视频、图文消息
        /// 用户点击media_id类型按钮后，微信服务器会将开发者填写的永久素材id对应的素材下发给用户，永久素材类型可以是图片、音频、视频、图文消息。请注意：永久素材id必须是在“素材管理/新增永久素材”接口上传后获得的合法id。
        /// </summary>
        media_id,
        /// <summary>
        /// 跳转图文消息URL 永久素材类型只支持图文消息
        /// 用户点击view_limited类型按钮后，微信客户端将打开开发者在按钮中填写的永久素材id对应的图文消息URL，永久素材类型只支持图文消息。请注意：永久素材id必须是在“素材管理/新增永久素材”接口上传后获得的合法id。
        /// </summary>
        view_limited,
        /// <summary>
        /// 用户点击 article_id 类型按钮后，微信客户端将会以卡片形式，下发开发者在按钮中填写的图文消息
        /// </summary>
        article_id,
        /// <summary>
        /// 类似 view_limited，但不使用 media_id 而使用 article_id 
        /// </summary>
        article_view_limited,
        #endregion

        #region 官网自定义菜单
        /// <summary>
        /// 图文
        /// </summary>
        news,
        /// <summary>
        /// 音频
        /// </summary>
        voice,
        /// <summary>
        /// 视频
        /// </summary>
        video,
        /// <summary>
        /// 文字
        /// </summary>
        text,
        /// <summary>
        /// 图片
        /// </summary>
        img,
        #endregion
        /// <summary>
        /// 小程序
        /// </summary>
        miniprogram,
        /// <summary>
        /// 扫码推事件
        /// </summary>
        scancode_push,
        /// <summary>
        /// 扫码推事件且弹出“消息接收中”提示框
        /// </summary>
        scancode_waitmsg,
        /// <summary>
        /// 弹出系统拍照发图
        /// </summary>
        pic_sysphoto,
        /// <summary>
        /// 弹出拍照或者相册发图
        /// </summary>
        pic_photo_or_album,
        /// <summary>
        /// 弹出微信相册发图器
        /// </summary>
        pic_weixin,
        /// <summary>
        /// 弹出地理位置选择器
        /// </summary>
        location_select
    }
}
